The present invention relates to a tool support synchronizing system for a numerical control apparatus of a complex machine tool with multiple spindles in which work programs for a plurality of tool supports are independently and simultaneously executed and the execution of a particular work block is initiated at a designated portion within the programs.
Referring first to FIG. 1, a numerical control apparatus is schematically shown. In FIG. 1, reference numeral 1 designates a tape on which is recorded a program using a known numerical control language; 2, a reading circuit; 3, a buffer memory; 4, a command decode processing circuit; 5, a precalculation circuit; 6, a control circuit; 7, a spindle-shifting-amount outputting circuit; 8, a pulse distribution circuit; 11, a detector; 12, a main-spindle rotation detector; 13, a programmable controller (hereinafter referred to simply as a PC); and 14, a tool machine to be controlled.
In operation, the program content of the tape 1 is read by the reading circuit and temporarily stored in the buffer memory 3, and then decoded by the command decode processing circuit 4. Preprocessing for necessary numerical calculations is executed by the precalculation circuit 5, and the resulting data is transmitted to the control circuit 6, thereby to effect on-line control.
The control circuit 6 outputs the data to the spindle-rotation amount outputting circuit 7 when the data is a spindle shifting command, and to the PC 13 when the data is other than a spindle shifting command. Upon the completion of execution of these commands, the control circuit outputs to the reading circuit 2 a signal for reading the next block in the program. More specifically, the amount of shifting of the spindle of the tool machine 14 is supplied to the spindle-shifting amount outputting circuit 7 for each block of the program 1 to output a pulse from the pulse distribution circuit 8, thereby to actuate the servo unit 9 for shifting the spindle using the motor 10. The detector 11 is mounted on the motor 10 to detect the amount of rotation of the motor 10, and the detected rotation amount is fed back to the servo unit 9 to drive the motor 10 by a predetermined amount. The main-spindle rotation detector 12 is mounted on the main spindle for the purpose of detecting the rotational speed of the rotating workpiece or rotating tool, and the detected rotational speed of the main spindle is fed back to the pulse distribution circuit 8 so as to make the rotational speed of the motor 10 the same as the rotational speed of the main spindle.
The PC 13 is a sequencer used for controlling operations except for the spindle shaft shifting of the tool machine 14 such as oil-pressure control, exchange of tools, and auxiliary control of the spindle. Signals are transmitted between the programmable controller 13 and the control circuit 6 to effect such control operations.
Referring to FIG. 2, the conventional synchronizing system for a numerical control apparatus (hereinafter referred to simply as an NC apparatus) having two tool supports as the tool machine 14 is shown.
In FIG. 2, 1A, 2A, 3A, 4A, 5A, 6A, 7A, 8A, 9A, 10A, 11A and 13A respectively designate a work program, a reading circuit, buffer memory, a command decode processing circuit, a precalculation circuit, a control circuit, a spindle-shifting-amount outputting circuit, a pulse distribution circuit, a servo unit, a motor, a detector, and a PC of a first tool support.
Further in FIG. 2, 1B, 2B, 3B, 4B, 5B, 6B, 10B, 11B and 13B respectively designate a working program, a reading circuit, a buffer memory, a command decode processing circuit, a precalculation circuit, a control circuit, a spindle-shifting-amount outputting circuit, a pulse distribution circuit, a servo unit, a motor, a detector, and a PC of a second tool support.
With this arrangement, a tandem control system composed of two independent control systems is necessary for driving two independent tool supports simultaneously with two independent work programs 1A and 1B.
It has hitherto been the case to use two NC apparatuses with one control system as shown in FIG. 1 for realizing a composite NC apparatus having two control systems as shown in FIG. 2. However, in the case where two tool supports are independently driven by two independent work programs, if there is a possibility of interference of the two tool supports with each other, it is necessary to make the one of the two tool supports wait to prevent such interference. Further, in the case of a balanced cut in which the two tool supports are positioned opposite one another and are moved simultaneously to effect a cutting operation, it is necessary to synchronize the start of movement the two tool supports. To effect this, there has been provided a particular synchronizing command into an auxiliary command (M command) used to make it possible to execute both working programs synchronously.
The conventional synchronizing system will be explained with reference to the following Table 1. In Table 1, M10 designates the synchronizing command. The first and second work programs for the tool supports are shown in left- and right-hand columns, respectively, of the Table.
TABLE 1 ______________________________________ N001 G28 N001 G28 N002 S600 T0101 M08 N002 T0303 N003 G00 X500.0 Z0.0 M0.3 N003 M10 N004 G01 X-1.0 F1.5 N004 G00 X0.0 Z1.0 N005 G00 Z1.0 N005 G01 Z-30.0 F0.4 N006 G00 X480.0 N006 G00 Z1.0 N007 M10 N007 G28 N008 G01 Z-200.0 N008 T0505 N009 G00 X500.0 N009 G00 X500.0 Z1.0 N010 G00 Z1.0 N010 G00 X475.0 N011 G00 X475.0 N011 M10 N012 M10 N012 G01 Z-195.0 F2.0 N013 G01 Z-195.0 F2.0 ______________________________________
As indicated by Table 1, the work program for the first tool support is started simultaneously with the program for the second tool support, and the sequence number (N003) of the work program for the second tool support is synchronized (N007) of the work program for the first tool support. Similarly, the sequence number (N011) of the work program for the second tool support is synchronized with the sequence number (N012) of the work program for the first tool support. FIG. 3 shows a timing chart for the execution of the work programs in Table 1.
With respect to the M command of the work program in the conventional NC apparatus having the construction as shown in FIG. 2, a numerical value subsequent to the M command is converted to BCD code and outputted from the control circuits 6A and 6B to the PCs 13A and 13B. The next work program is executed after receiving a completion signal from the PCs 13A and 13B. Therefore, the synchronizing command M10 is also outputted from the control circuit 6A or 6B to the PC 13A or PC 13B. The PCs 13A and 13B are synchronized with each other in such a manner that one of the PCs 13A and 13B does not output a completion signal to the control circuit during the period from receipt of the synchronizing command M10 to the receipt of the synchronizing signal M10 by the other PC.
Referring to FIG. 4, a relay circuit of the PCs 13A and 13B is shown. in FIG. 4, M10A and M10B are relays actuated in accordance with BCD code decoded from the synchronizing command M10. FINA and FINB are signals fed back to the control circuits 6A and 6B, respectively, of FIG. 2 as completion signals. The FINA and FINB signals are used for obtaining synchronization of the actuation of the relays M10A and M10B. Further in FIG. 4, MFA and MFB are control signals outputted from the control circuits 6A and 6B, respectively, which are low-truth signals outputted from the control circuits slightly later than the BCD code of the M command and the completion signals FINA and FINB from the PCs 13A and PC 13B.
Thus, according to the conventional synchronizing system for tool supports, the auxiliary command (M command) is utilized, and the PCs 13A and 13B effect synchronization control in response to the M command. In such a case, it has been very difficult to make the operating time of the PC 13A the same as that of the PC 13B so that precise synchronization has not been achieved by the conventional synchronizing system. Further, there is a disadvantage in that it is difficult to discriminate the synchronizing M command from the other M commands.